xen/rpi4: implement watchdog-based reset
authorStefano Stabellini <sstabellini@kernel.org>
Fri, 2 Oct 2020 20:47:17 +0000 (13:47 -0700)
committerHans van Kranenburg <hans@knorrie.org>
Sun, 28 Feb 2021 18:53:12 +0000 (19:53 +0100)
commit3b08ec00cbffa2246049d21624873c9f0bd169ac
tree4202aedb19cafa1f7b8528ef4afa10dcb953ddf1
parentefe432241f127e78534b4e0198957972de164d7b
xen/rpi4: implement watchdog-based reset

The preferred method to reboot RPi4 is PSCI. If it is not available,
touching the watchdog is required to be able to reboot the board.

The implementation is based on
drivers/watchdog/bcm2835_wdt.c:__bcm2835_restart in Linux v5.9-rc7.

Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Acked-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Tested-by: Roman Shaposhnik <roman@zededa.com>
CC: roman@zededa.com
(cherry picked from commit 25849c8b16f2a5b7fcd0a823e80a5f1b590291f9)
xen/arch/arm/platforms/brcm-raspberry-pi.c